package com.hspedu.polymorphic_.exercise;

public class PolyExercise02 {
    public static void main(String[] args) {
        Sub s = new Sub();
        System.out.println(s.count);//20
        s.display();//20
        Base b = s;//向上转型
        System.out.println(b==s);//比较的是 b 和 s指向的内存地址是否一样，true
        System.out.println(b.count);//属性的值看编译类型，Base b ，count等于10
        b.display();//b的运行类型是Sub(), 所以看Sub()里的方法 20
    }
}

class Base{
    int count = 10;
    public void display(){
        System.out.println(this.count);
    }
}

class Sub extends Base{
    int count = 20;
    public void display(){
        System.out.println(this.count);
    }
}